<?php
namespace app\seller\controller;
/**
 * Created by PhpStorm.
 * Author: 陈庆锋
 * Date: 2018/9/4
 * Time: 18:17
 * Desc: 店铺中心
 */

use app\common\controller\Base;
use think\Db;
use tools\curl\Curl;
use think\Config;

/**
 * @title 店铺管理员（02-02）
 * @description 接口说明
 * @group 店铺（02）
 * @header name:model_id require:0 default:03 desc:秘钥(区别设置)
 * @groupremark 已使用错误码1-02-02-0001
 */

class SellerAdmin extends Base
{
     //要访问的接口
     protected $url = "";
     /**
      * @title 店铺管理员基本信息
      * @description 接口说明
      * @author 开发者（陈庆锋）
      * @url /seller/seller_admin/info_by_token
      * @method POST

      * @param name:token type:string require:0 default:0 other: desc:店铺管理员登录后的token
      *
      * @return:
      */
      public function info_by_token(){
          $data = input();

          $rule = [
              'token'  =>[ 'require']
          ];

          $vmsg = [
              'token.require' => 'token不能为空'
          ];
          $validate = new \think\Validate($rule,$vmsg);
          $result   = $validate->batch()->check($data);
          if ($result !== true) {
              $msg['msg']='校验失败';
              $msg['validate']=$validate->getError();
              $msg['error_id']='1-02-02-0001';
              return $this->errorJson($msg);
          }

          //调用登录模块，获取账号信息
          $login_model_api = Config('model_api')['login'];
          $url = $login_model_api."/account/info_by_token";
          $account = Curl::get($url, array('token'=>$data['token']));
          if(!$account){
              $msg['msg']='获取账户信息失败';
              $msg['error_id']='1-02-02-0002';
              return $this->errorJson($account);
          }
          $account = Curl::json2arr($account);
          $account=$account['data'];

          //调用管理员权限模块，获取管理员的角色
          $admin_auth_model_api = Config('model_api')['shop_admin_auth'];
          $url = $admin_auth_model_api."/admin_role/role_by_token";
          $role_list = Curl::post($url, array('token'=> $data['token']));
          $msg['role_list']=$role_list;
          if(!$role_list){
              $msg['msg']='获取角色失败';
              $msg['validate']=$validate->getError();
              $msg['error_id']='1-02-02-0003';
              $msg['url']=$url;
              return $this->errorJson($msg);
          }
          $role_list = Curl::json2arr($role_list);
          $role_list=$role_list['list'];

          $roles=[];
          if (is_array($role_list)) {
              foreach ($role_list as $role){
                  $roles[]=$role['role'];
              }
          }

          //获取角色数据
          $msg['roles'] = $roles;
//          $msg['roles']=array('admin');
          //根据下账号id，获取管理员的信息。
          if($data['token']){                  //店铺管理员登录后要获取的店铺基本信息
              $seller = Db::name('shop_admin')
                  ->where('account_id',$account['account_id'])
                  ->find();
               if($seller){
//                   $seller['introduction'] = $roles['data']['name'];
                    $msg['data'] = $seller;
                    return $this->successJson($msg);
               }else{
                    $msg['error_id'] = '1-02-02-0004';
                    return $this->errorJson($msg);
               }
          }

//          if($data['seller_id']){          //用户端的店铺基本信息,待开发中
//
//          }
      }
}